{{!
  Copyright (c) HashiCorp, Inc.
  SPDX-License-Identifier: BUSL-1.1
~}}

<PageHeader as |p|>
  <p.levelLeft>
    <h1 class="title is-3">
      Wrap Data
    </h1>
  </p.levelLeft>
</PageHeader>

{{#if @token}}
  <div class="box is-sideless is-fullwidth is-marginless">
    <div class="field">
      <label for="wrap-info" class="is-label">Wrapped token</label>
      <div class="control">
        <Textarea
          @value={{@token}}
          readonly={{true}}
          class="textarea"
          id="wrap-info"
          name="wrap-info"
          data-test-tools-input="wrapping-token"
        />
      </div>
    </div>
  </div>
  <div class="field is-grouped box is-fullwidth is-bottomless">
    <div class="control">
      <Hds::Copy::Button @text="Copy" @textToCopy={{@token}} class="primary" />
    </div>
    <div class="control">
      <Hds::Button @text="Back" @color="secondary" {{on "click" this.onClear}} />
    </div>
  </div>
{{else}}
  <div class="box is-sideless is-fullwidth is-marginless">
    <NamespaceReminder @mode="perform" @noun={{@selectedAction}} />
    <MessageError @errors={{@errors}} />
    <div class="field">
      <div class="control">
        <JsonEditor
          @title="Data to wrap"
          @subTitle="json-formatted"
          @value={{this.data}}
          @valueUpdated={{action this.codemirrorUpdated}}
        />
      </div>
    </div>
    <TtlPicker
      @label="Wrap TTL"
      @initialValue="30m"
      @onChange={{action "updateTtl"}}
      @helperTextDisabled="Vault will use the default (30m)"
      @helperTextEnabled="Wrap will expire after"
      @changeOnInit={{true}}
    />
  </div>
  <div class="field is-grouped box is-fullwidth is-bottomless">
    <div class="control">
      <Hds::Button @text="Wrap data" type="submit" data-test-tools-submit="true" disabled={{@buttonDisabled}} />
    </div>
  </div>
{{/if}}